//在dom结构加载完闭后执行
$(function () {
	//修改资料选项卡
	$('#sel-edit li').click( function () {
		//index方法：
		//返回指定节点在同级节点中的索引
		//哪个#sel-edit li节点被点击就返回他在同级li中是第几个li
		var index = $(this).index();
		//哪个#sel-edit li节点被点击就给他增加一个类名,一个选中的样式
		//把他的同节元素全部移除掉这个类名
		$(this).addClass('edit-cur').siblings().removeClass('edit-cur');
		//三个切换菜单全部隐藏，再把当前对应li的.form中的内容显示
		$('.form').hide().eq(index).fadeIn().show();
	} );



	//省市联动
	var province = '';
	$.each(city, function (i, k) {
		province += '<option value="' + k.name + '" index="' + i + '">' + k.name + '</option>';
	});
	$('select[name=province]').append(province).change(function () {
		var option = '';
		if ($(this).val() == '') {
			option += '<option value="">请选择</option>';
		} else {
			var index = $(':selected', this).attr('index');
			var data = city[index].child;
			for (var i = 0; i < data.length; i++) {
				option += '<option value="' + data[i] + '">' + data[i] + '</option>';
			}
		}
		
		$('select[name=city]').html(option);
	});


	//显示用户的省份和城市
	//解析模板引警中生成的变量
	var useraddress=address.split('|');
	//给省份直接设置
	$('select[name=province]').val(useraddress[0]);
	$.each(city,function(index, el) {
		//肯定是操作city数组中一个json元素
		if(el.name==useraddress[0]){
			var str='';
			for(var i in el.child){
				 str+='<option value="'+el.child[i]+'" ';
				 if(el.child[i]==useraddress[1]){	
				 	str+='selected="selected"';
				 }
				 str+='>'+el.child[i]+'</option>';
			}
			$('select[name=city]').html(str);
		}
	});
	//用户的星座
	$('select[name=night]').val(constellation);


	//头像上传 调用Uploadify 插件
	$('#face').uploadify({
		swf : PUBLIC + '/Uploadify/uploadify.swf',	//引入Uploadify核心Flash文件
		uploader : uploadUrl,	//PHP处理脚本地址（在模板中定义这个common/uploadface）
		width : 120,	//上传按钮宽度
		height : 30,	//上传按钮高度
		buttonImage : PUBLIC + '/Uploadify/browse-btn.png',	//上传按钮背景图地址//图片是二栏的背景图片
		fileTypeDesc : '你的头像',	//选择文件提示文字
		fileTypeExts : '*.jpeg; *.jpg; *.png; *.gif',	//允许选择的文件类型
		//解决session权限，session的名字被tp改为了session_id,不叫phpsessionid了
		formData : {'session_id' : sid},
		//上传成功后的回调函数
		onUploadSuccess:function(filename,data,response){
			//解析后端传来的json字符串变为js对象
			var data=JSON.parse(data);
			//文件上传成功
			if(data.status==1){
				//找到那个图象浏览节点
				//把服务端的大缩略图片80*80加载到这个img节点上
				$("#face-img").attr('src',ROOT+data.path.max.substr(1));
				//选中三个存入路径的隐藏域存放好值
				$('input[name=face180]').val(ROOT+data.path.max.substr(1));
				$('input[name=face80]').val(ROOT+data.path.mid.substr(1));
				$('input[name=face50]').val(ROOT+data.path.sma.substr(1));
			}else{
				alert(data.msg);
			}
		}
	});


	//jQuery Validate 修改密码表单验证
	
	/**
	 * 添加验证方法
	 * 以字母开头，5-17 字母、数字、下划线"_"
	 */
	jQuery.validator.addMethod("user", function(value, element) {   
	    var tel = /^[a-zA-Z][\w]{4,16}$/;
	    return this.optional(element) || (tel.test(value));
	}, "以字母开头，5-17 字母、数字、下划线'_'");

	$('form[name=editPwd]').validate({
		errorElement : 'span',
		success : function (label) {
			label.addClass('success');
		},
		rules : {
			old : {
				required : true,
				user : true
			},
			new : {
				required : true,
				user : true
			},
			newed : {
				required : true,
				equalTo : "#new"
			}
		},
		messages : {
			old : {
				required : '请填写旧密码',
			},
			new : {
				required : '请设置新密码'
			},
			newed : {
				required : '请确认密码',
				equalTo : '两次密码不一致'
			}
		}
	});	


	//jQuery Validate 基本信息表单验证
	/**
	 * 添加验证方法
	 * 以字母开头，5-17 字母、数字、下划线"_"
	 */
	jQuery.validator.addMethod("user", function(value, element) {   
	    var tel = /^[a-zA-Z][\w]{4,16}$/;
	    return this.optional(element) || (tel.test(value));
	}, "以字母开头，5-17 字母、数字、下划线'_'");

	$('form[name=editBasic]').validate({
		errorElement : 'span',
		success : function (label) {
			label.addClass('success');
		},
		rules : {
			nickname : {
				required : true,
				user : true
			}
		},
		messages : {
			newed : {
				required : '请输入呢称',
			}
		}
	});
});